package com.neusoft.neuhealth.service;

import com.neusoft.neuhealth.domain.SetMeal;
import com.neusoft.neuhealth.po.ListResult;
import com.neusoft.neuhealth.po.Result;
import com.neusoft.neuhealth.po.diet.params.*;
import com.neusoft.neuhealth.po.diet.result.*;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface IDietService {
    Result<List<DietCalendarResult>> monthList(DietCalendarMonthListParams params);

    Result<List<DishResult>> timeDishOptions(String time, String pork);

    Result<DishListResult> dishList(DishListParams params);

    Result addDish(DishParams params);

    Result updateDish(DishParams params);

    Result removeDish(RemoveDishParams params);

    Result<ListResult<CustomerDishListResult>> customerList(CustomerListParams params);

    Result<List<DishResult>> availableDishes(String time, String pork);

    Result uploadImg(MultipartFile file, String name);

    Result<ListResult<SetMealResult>> getSetMealList(String status, String pork, String setMealName, Integer pageNum, Integer pageSize);

    Result saveDietCalendar(DietCalendarSaveParams params);

    Result updateSetMeal(SetMeal setMeal);

    Result removeSetMeal(Long setMealId);

    Result saveSetMealDishes(SaveSetMealDishesParams params);

    Result saveCustomerSetMeal(SaveCustomerSetMealParams params);

    Result<List<SetMeal>> getDailyList(String date);
}
